package com.didispace.rabbit;

import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.util.Date;
// 创建消息生产者 Sender。  p303
// 通过注入 AmqpTemplate 接口的实例来实现消息的发送，
// AmqpTemplate 接口定义了一套针对 AMQP 协议的基础操作。
// 在 Spring Boot 中会根据配置来注入其具体实现。
// 在该生产者中，我们会产生一个字符串，并发送到名为 hello 的队列中。
@Component
public class Sender {

	@Autowired
	private AmqpTemplate rabbitTemplate;

	public void send() {
		String context = "hello " + new Date();
		System.out.println("Sender : " + context);
		this.rabbitTemplate.convertAndSend("hello", context);
	}

}